<?php defined('SYSPATH') OR die('No direct access allowed.');

class Home_Test extends Unit_Test_Case {

	public function home_inicio_test(){
		$cfg = ORM::factory('config')->find();
		$pagina = ORM::factory('pagina', $cfg->home);
		$this->assert_integer($pagina->id);
		$this->assert_not_empty($pagina->titulo);
		$this->assert_not_empty($pagina->conteudo);
	}

	public function home_pagina_test(){
		$pagina = ORM::factory('pagina')->find();
		$this->assert_integer($pagina->id);
		$this->assert_not_empty($pagina->titulo);
		$this->assert_not_empty($pagina->conteudo);
	}
	
	public function bloco_test(){
		$bloco = ORM::factory('bloco')->find();
		$this->assert_integer($bloco->id);
		$this->assert_not_empty($bloco->nome);
		$this->assert_not_empty($bloco->titulo);
		$this->assert_not_empty($bloco->conteudo);
		$this->assert_not_empty($bloco->tipo);
		$this->assert_integer($bloco->ordem);
		$this->assert_not_empty($bloco->ativo);
		$this->assert_not_empty($bloco->posicao);
	}
	
	public function config_test(){
		$config = ORM::factory('config')->find();
		$this->assert_integer($config->id);
		$this->assert_not_empty($config->title);
		$this->assert_not_empty($config->template);
		$this->assert_not_empty($config->footer);
		$this->assert_not_empty($config->header);
	}
	
	public function menu_test(){
		$menu = ORM::factory('menu')->find();
		$this->assert_integer($menu->id);
		$this->assert_not_empty($menu->nome);
		$this->assert_not_empty($menu->ordem);
		$this->assert_not_empty($menu->ativo);
		$submenus = $menu->submenus;
		foreach ($submenus as $submenu) {
			$this->assert_integer($submenu->id);
			$this->assert_not_empty($submenu->nome);
			$this->assert_not_empty($submenu->titulo);
			$this->assert_not_empty($submenu->link);
			$this->assert_not_empty($submenu->target);
			$this->assert_not_empty($submenu->ordem);
			$this->assert_not_empty($submenu->ativo);
			$this->assert_integer($submenu->menu_id);
		} 
	}
	
}
